.TH std::recursive_timed_mutex 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::recursive_timed_mutex \- std::recursive_timed_mutex

.SH Synopsis
   Defined in header <mutex>
   class recursive_timed_mutex;  \fI(since C++11)\fP

   The recursive_timed_mutex class is a synchronization primitive that can be used to
   protect shared data from being simultaneously accessed by multiple threads.

   In a manner similar to std::recursive_mutex, recursive_timed_mutex provides
   exclusive, recursive ownership semantics. In addition, recursive_timed_mutex
   provides the ability to attempt to claim ownership of a recursive_timed_mutex with a
   timeout via the try_lock_for and try_lock_until member functions.

   The recursive_timed_mutex class satisfies all requirements of TimedMutex and
   StandardLayoutType.

.SH Member types

   Member type                    Definition
   native_handle_type (optional*) implementation-defined

.SH Member functions

   constructor    constructs the mutex
                  \fI(public member function)\fP
   destructor     destroys the mutex
                  \fI(public member function)\fP
   operator=      not copy-assignable
   [deleted]      \fI(public member function)\fP
.SH Locking
   lock           locks the mutex, blocks if the mutex is not available
                  \fI(public member function)\fP
   try_lock       tries to lock the mutex, returns if the mutex is not available
                  \fI(public member function)\fP
                  tries to lock the mutex, returns if the mutex has been
   try_lock_for   unavailable for the specified timeout duration
                  \fI(public member function)\fP
                  tries to lock the mutex, returns if the mutex has been
   try_lock_until unavailable until specified time point has been reached
                  \fI(public member function)\fP
   unlock         unlocks the mutex
                  \fI(public member function)\fP
.SH Native handle
   native_handle  returns the underlying implementation-defined native handle object
                  \fI(public member function)\fP
